package com.punai.evaluationSystem.costDataEvalute.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.punai.common.annotation.Excel;
import com.punai.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * price对象 evaluation_data_price
 *
 * @author tj
 * @date 2023-04-25
 */
public class EvaluationDataPrice extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private String id;
    /**
     * 原编码
     */
    @Excel(name = "原编码")
    private String oid;
    /**
     * 父id
     */
    @Excel(name = "父id")
    private String pid;
    /**
     * 评价后编码
     */
    @Excel(name = "评价后编码")
    private String code;
    /**
     * 评价后名称
     */
    @Excel(name = "评价后名称")
    private String name;
    /**
     * 评价后特征值
     */
    @Excel(name = "评价后特征值")
    private String tzz;
    /**
     * 评价后地区
     */
    @Excel(name = "评价后地区")
    private String region;
    /**
     * 评价后单位
     */
    @Excel(name = "评价后单位")
    private String jldw;
    /**
     * 评价后价格数量
     */
    @Excel(name = "评价后价格数量")
    private Integer jgsl;
    /**
     * 评价后应用次数
     */
    @Excel(name = "评价后应用次数")
    private Integer yycs;
    /**
     * 众数
     */
    @Excel(name = "众数")
    private BigDecimal number;
    /**
     * 算数平均值
     */
    @Excel(name = "算数平均值")
    private BigDecimal ssavg;
    /**
     * 加权平均值
     */
    @Excel(name = "加权平均值")
    private BigDecimal avg;
    /**
     * 加权平均值类型
     */
    @Excel(name = "加权平均值类型")
    private String avgType;
    /**
     * 中位数
     */
    @Excel(name = "中位数")
    private BigDecimal median;
    /**
     * 用户定价
     */
    @Excel(name = "用户定价")
    private BigDecimal userPrice;
    /**
     * 去大去小平均值
     */
    @Excel(name = "去大去小平均值")
    private BigDecimal qdqxAvg;
    /**
     * 去大去小平均值类型
     */
    @Excel(name = "去大去小平均值类型")
    private String qdqxAvgType;
    /**
     * 评价后工作内容
     */
    @Excel(name = "评价后工作内容")
    private String gznr;
    /**
     * 评价后计算规则
     */
    @Excel(name = "评价后计算规则")
    private String jsgz;
    /**
     * 项目id
     */
    @Excel(name = "项目id")
    private String proid;
    /**
     * 评价分类
     */
    @Excel(name = "评价分类")
    private String classification;
    /**
     * 评价时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "评价时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date evaluationDate;
    /**
     * 参与评价次数
     */
    @Excel(name = "参与评价次数")
    private Integer evaluationNumber;
    /**
     * 费用项分类ID
     */
    @Excel(name = "费用项分类ID")
    private String categoryId;
    /**
     * 收入价
     */
    @Excel(name = "收入价")
    private BigDecimal srprice;
    /**
     * 成本价
     */
    @Excel(name = "成本价")
    private BigDecimal cbprice;
    /**
     * 利润额
     */
    @Excel(name = "利润额")
    private BigDecimal lre;
    /**
     * 利润率
     */
    @Excel(name = "利润率")
    private BigDecimal lrl;
    /**
     * 价格区间
     */
    @Excel(name = "价格区间")
    private String priceRange;
    /**
     * 含税合价
     */
    @Excel(name = "含税合价")
    private BigDecimal hshj;
    /**
     * 费率
     */
    @Excel(name = "费率")
    private BigDecimal zfl;

    @TableField(exist = false)
    private String countbtjgsl;

    @TableField(exist = false)
    private String countjoinnum;

    @TableField(exist = false)
    private String pjjgsj;

    @TableField(exist = false)
    private BigDecimal feeitemprice;


    @TableField(exist = false)
    private String evaluatetype;

    public String getCountjoinnum() {
        return countjoinnum;
    }

    public void setCountjoinnum(String countjoinnum) {
        this.countjoinnum = countjoinnum;
    }

    public String getEvaluatetype() {
        return evaluatetype;
    }

    public void setEvaluatetype(String evaluatetype) {
        this.evaluatetype = evaluatetype;
    }

    public BigDecimal getFeeitemprice() {
        return feeitemprice;
    }

    public void setFeeitemprice(BigDecimal feeitemprice) {
        this.feeitemprice = feeitemprice;
    }

    public String getPjjgsj() {
        return pjjgsj;
    }

    public void setPjjgsj(String pjjgsj) {
        this.pjjgsj = pjjgsj;
    }

    public String getCountbtjgsl() {
        return countbtjgsl;
    }

    public void setCountbtjgsl(String countbtjgsl) {
        this.countbtjgsl = countbtjgsl;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setOid(String oid) {
        this.oid = oid;
    }

    public String getOid() {
        return oid;
    }

    public void setPid(String pid) {
        this.pid = pid;
    }

    public String getPid() {
        return pid;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getCode() {
        return code;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setTzz(String tzz) {
        this.tzz = tzz;
    }

    public String getTzz() {
        return tzz;
    }

    public void setRegion(String region) {
        this.region = region;
    }

    public String getRegion() {
        return region;
    }

    public void setJldw(String jldw) {
        this.jldw = jldw;
    }

    public String getJldw() {
        return jldw;
    }

    public void setJgsl(Integer jgsl) {
        this.jgsl = jgsl;
    }

    public Integer getJgsl() {
        return jgsl;
    }

    public void setYycs(Integer yycs) {
        this.yycs = yycs;
    }

    public Integer getYycs() {
        return yycs;
    }

    public void setNumber(BigDecimal number) {
        this.number = number;
    }

    public BigDecimal getNumber() {
        return number;
    }

    public void setSsavg(BigDecimal ssavg) {
        this.ssavg = ssavg;
    }

    public BigDecimal getSsavg() {
        return ssavg;
    }

    public void setAvg(BigDecimal avg) {
        this.avg = avg;
    }

    public BigDecimal getAvg() {
        return avg;
    }

    public void setAvgType(String avgType) {
        this.avgType = avgType;
    }

    public String getAvgType() {
        return avgType;
    }

    public void setMedian(BigDecimal median) {
        this.median = median;
    }

    public BigDecimal getMedian() {
        return median;
    }

    public void setUserPrice(BigDecimal userPrice) {
        this.userPrice = userPrice;
    }

    public BigDecimal getUserPrice() {
        return userPrice;
    }

    public void setQdqxAvg(BigDecimal qdqxAvg) {
        this.qdqxAvg = qdqxAvg;
    }

    public BigDecimal getQdqxAvg() {
        return qdqxAvg;
    }

    public void setQdqxAvgType(String qdqxAvgType) {
        this.qdqxAvgType = qdqxAvgType;
    }

    public String getQdqxAvgType() {
        return qdqxAvgType;
    }

    public void setGznr(String gznr) {
        this.gznr = gznr;
    }

    public String getGznr() {
        return gznr;
    }

    public void setJsgz(String jsgz) {
        this.jsgz = jsgz;
    }

    public String getJsgz() {
        return jsgz;
    }

    public void setProid(String proid) {
        this.proid = proid;
    }

    public String getProid() {
        return proid;
    }

    public void setClassification(String classification) {
        this.classification = classification;
    }

    public String getClassification() {
        return classification;
    }

    public void setEvaluationDate(Date evaluationDate) {
        this.evaluationDate = evaluationDate;
    }

    public Date getEvaluationDate() {
        return evaluationDate;
    }

    public void setEvaluationNumber(Integer evaluationNumber) {
        this.evaluationNumber = evaluationNumber;
    }

    public Integer getEvaluationNumber() {
        return evaluationNumber;
    }

    public void setCategoryId(String categoryId) {
        this.categoryId = categoryId;
    }

    public String getCategoryId() {
        return categoryId;
    }

    public void setSrprice(BigDecimal srprice) {
        this.srprice = srprice;
    }

    public BigDecimal getSrprice() {
        return srprice;
    }

    public void setCbprice(BigDecimal cbprice) {
        this.cbprice = cbprice;
    }

    public BigDecimal getCbprice() {
        return cbprice;
    }

    public void setLre(BigDecimal lre) {
        this.lre = lre;
    }

    public BigDecimal getLre() {
        return lre;
    }

    public void setLrl(BigDecimal lrl) {
        this.lrl = lrl;
    }

    public BigDecimal getLrl() {
        return lrl;
    }

    public void setPriceRange(String priceRange) {
        this.priceRange = priceRange;
    }

    public String getPriceRange() {
        return priceRange;
    }

    public void setHshj(BigDecimal hshj) {
        this.hshj = hshj;
    }

    public BigDecimal getHshj() {
        return hshj;
    }

    public void setZfl(BigDecimal zfl) {
        this.zfl = zfl;
    }

    public BigDecimal getZfl() {
        return zfl;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("oid", getOid())
                .append("pid", getPid())
                .append("code", getCode())
                .append("name", getName())
                .append("tzz", getTzz())
                .append("region", getRegion())
                .append("jldw", getJldw())
                .append("jgsl", getJgsl())
                .append("yycs", getYycs())
                .append("number", getNumber())
                .append("ssavg", getSsavg())
                .append("avg", getAvg())
                .append("avgType", getAvgType())
                .append("median", getMedian())
                .append("userPrice", getUserPrice())
                .append("qdqxAvg", getQdqxAvg())
                .append("qdqxAvgType", getQdqxAvgType())
                .append("gznr", getGznr())
                .append("jsgz", getJsgz())
                .append("proid", getProid())
                .append("classification", getClassification())
                .append("evaluationDate", getEvaluationDate())
                .append("evaluationNumber", getEvaluationNumber())
                .append("categoryId", getCategoryId())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .append("srprice", getSrprice())
                .append("cbprice", getCbprice())
                .append("lre", getLre())
                .append("lrl", getLrl())
                .append("priceRange", getPriceRange())
                .append("hshj", getHshj())
                .append("zfl", getZfl())
                .toString();
    }
}
